其他
Spring Boot 容器化部署 - Docker
▶ 容器化运行的三要素
基础环境:JDK
应用:Spring Boot 应用 jar 包
外部配置:Spring Boot 配置参数
▶ 选取合适的基础镜像
https://hub.docker.com/_/openjdk
https://hub.docker.com/_/java
▶ 构建 Docker 镜像
1、Maven 打包项目
1mvn clean package
2、在项目根目录下添加 Dockerfile
1FROM openjdk:8-jre-alpine
2
3ENV TZ="Asia/Shanghai" HOME="/root" JVM_PARAMS=" " SPRING_PARAMS=" "
4
5WORKDIR ${HOME}
6
7ADD target/*.jar ${HOME}/server.jar
8
9EXPOSE 8080
10
11CMD java $JVM_PARAMS -Djava.security.egd=file:/dev/./urandom -jar ${HOME}/server.jar $SPRING_PARAMS
3、构建镜像
1docker build -t <镜像名> .
▶ 部署服务
1、简单启动
1docker run -d --name <容器名> -p 8080:8080 <镜像名>
2、配置 JVM
1docker run -d --name <容器名> -p 8080:8080 -e JVM_PARAMS="-Xmx21824M -Xms21824M" <镜像名>
3、配置额外的 Spring Boot 参数
1docker run -d --name <容器名> -p 8080:8080 -e JVM_PARAMS="-Xmx21824M -Xms21824M" -e SPRING_PARAMS="--spring.profiles.active=prod" <镜像名>
打开浏览器,或者使用 curl 访问地址 http://localhost:8080
▶ Github Demo URL
https://github.com/ChinaSilence/spring-boot-demos/tree/master/50%20-%20deploy%20by%20docker
问题来了,请问诸位你们项目中目前在使用Docker吗?
● Spring Boot 日志处理你还在用Logback?
如有收获,请帮忙转发,您的鼓励是作者最大的动力,谢谢!